<?php
##########################################
##### Autor: Yngrid Coello           #####
##### Correo: y-c-@hotmail.com       #####
##### Ult. Modif: 26/10/2011         #####
##### Pasantias de Grado - USB       #####
##### Realización del Sistema: 0Bs   #####
##########################################

class EstacionForm extends BaseEstacionForm
{
  public function configure()
  {
     // Inicializar los Widgets de cada campo
    $this->setWidgets(array(
      'codigo'      => new sfWidgetFormInputText(),
      'descripcion' => new sfWidgetFormInputText(),
      'siglas'      => new sfWidgetFormInputText(),
    ));
    
    $this->widgetSchema->setLabels(array(
      'codigo'    => 'C&oacute;digo',
      'descripcion'      => 'Descripci&oacute;n',
    ));
    
    // Setear los errores que aparecen en el formulario
    $this->setValidators(array(
      'codigo'      => new sfValidatorString(array('required' => true), array('required' => 'Debe especificar el c&oacute;digo de oracle de la estaci&oacute;n.')),
      'siglas'      => new sfValidatorString(array('required' => true), array('required' => 'Debe especificar las siglas de la estaci&oacute;n.')),
      'descripcion' => new sfValidatorString(array('required' => true), array('required' => 'Debe especificar la descripci&oacute;n de la estaci&oacute;n.')),
    ));
    
    $this->validatorSchema->setPostValidator(
      new sfValidatorAnd(array(
        new sfValidatorPropelUnique(array('model' => 'Estacion', 'column' => array('codigo'))),
        new sfValidatorPropelUnique(array('model' => 'Estacion', 'column' => array('siglas'))),
        new sfValidatorPropelUnique(array('model' => 'Estacion', 'column' => array('descripcion'))),
      ))
    );

    $this->widgetSchema->setNameFormat('estacion[%s]');
    $this->errorSchema = new sfValidatorErrorSchema($this->validatorSchema);
    
  }
}
